package com.evget.loggingwellconstructiondesign.meta.service;

import cn.iocoder.yudao.framework.common.pojo.PageResult;
import com.baomidou.mybatisplus.extension.service.IService;
import ${package}.${moduleName}.meta.entity.pojo.${ClassName};
import ${package}.${moduleName}.meta.entity.request.${ClassName}Request;
import ${package}.${moduleName}.meta.entity.request.${ClassName}SelectPageRequest;
import ${package}.${moduleName}.meta.entity.request.${ClassName}SelectRequest;
import ${package}.${moduleName}.meta.entity.response.${ClassName}Response;

import java.util.List;

/**
*
* ${tableComment}(${functionName})
*
* @author ${author} ${email}
* @since ${version} ${date}
*/
public interface ${ClassName}Service extends IService<${ClassName}> {

    /**
     * 添加${tableComment}
     * @param request ${className}Request对象
     */
    boolean add(${ClassName}Request request);

    /**
     * 批量添加${tableComment}
     * @param requestList List<${ClassName}Request>对象
     */
    boolean addBatch(List<${ClassName}Request> requestList);

    /**
     * 根据id删除${tableComment}（支持批量）
     * @param ids id数组
     */
    boolean deleteByIds(List<String> ids);

    /**
     * 更新${tableComment}
     * @param request ${className}Request对象
     */
    boolean updateInfo(${ClassName}Request request);

    /**
     * 批量更新${tableComment}
     * @param requestList List<${ClassName}Request>对象
     */
    boolean updateBatch(List<${ClassName}Request> requestList);

    /**
     * 根据id查询${tableComment}
     * @param ids ids对象（ids，多个用逗号分割）
     */
    List<${ClassName}Response> getListByIds(String ids);

    /**
     * 查询${tableComment}列表
     * @param request ${ClassName}SelectRequest对象
     */
    List<${ClassName}Response> getList(${ClassName}SelectRequest request);

    /**
     * 分页查询${tableComment}列表
     * @param request ${ClassName}SelectPageRequest对象
     */
    PageResult<${ClassName}> get${ClassName}Page(${ClassName}SelectPageRequest request);
}
